<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>博客详情页</title>
    <link rel="stylesheet" href="css/common.css">
    <link rel="stylesheet" href="css/blog_detail.css">

    <!-- 引入 editor.md 的依赖 -->
    <link rel="stylesheet" href="editor.md/css/editormd.min.css" />
    <script src="js/jquery.min.js"></script>
    <script src="editor.md/lib/marked.min.js"></script>
    <script src="editor.md/lib/prettify.min.js"></script>
    <script src="editor.md/editormd.js"></script>

</head>

<style>
    body{
        background-image: url("img/detail.png");
    }
</style>

<body>
    <!-- 导航栏 -->
    <div class="nav">
        <img src="img/tom.jpeg" alt="">
        <span>XS-blog</span>
        <!-- 空白元素 实现占位 -->
        <div class="spacer"></div>
        <a href="blog_list.html">主页</a>
        <a href="blog_edit.html">写博客</a>
        <a href="blog_login.html" id="logout">注销</a>
    </div>
    <!-- 这里的.container作为页面的版心 -->
    <div class="container">
        <!-- 左侧个人信息 -->
        <div class="left">
            <!-- 表示整个用户的信息区域 -->
            <div class="card">
                <img src="img/tom.jpeg" alt="">
                <h3></h3>
                <a href="https://gitee.com/">Gitee地址</a>
                <div class="counter">
                    <span>文章</span>
                    <span>分类</span>
                </div>
                <div class="counter">
                    <span>2</span>
                    <span>1</span>
                </div>
            </div>
        </div>
        <!-- 右侧内容详情 -->
        <div class="right">
        <!-- 使用这个 div 来包裹整个博客的内容详情 -->
        <div class="blog-content">
            <!-- 博客标题 -->
            <h3></h3>
            <!-- 博客的时间 -->
            <div class="date"></div>
            <!-- 正文 -->
           <div id="content" style="opacity: 75%">

           </div>
        </div>
        </div>
    </div>


    <script src="jquery.js"></script>
    <script>
        var url=window.location.href;
        console.log(url);
        var index=url.lastIndexOf("=");
        var blogId=url.substring(index+1);
        console.log(blogId);

        $("#logout").click(function (){
            $.ajax({
                url: "/user/logout",
                type:"get",
                dataType: "json",
                success:function (data){
                    if (data.status==0){
                        alert("注销成功~");
                        window.location.href="blog_login.html";
                    }else {
                        alert("注销失败~");
                    }
                }
            });
        });


        function getBlogDetail(blogId){
            $.ajax({
                type: 'get',
                // location.search 拿到了形如 '?blogId=5' 这样的一段内容
                url: "/blog/findblogbyblogid",
                data:{"blogId":blogId},
                success: function(body){
                    console.log(body);
                    //根据body中的内容来构造页面
                    //1.构造博客标题
                    let h3=document.querySelector(".blog-content>h3")
                    h3.innerHTML=body.data.title;
                    //2.构造博客发布时间
                    let dateDiv=document.querySelector('.date');
                    dateDiv.innerHTML=body.data.postTime;
                    // 3. 构造博客正文
                    // 如果直接把 content 设为 innerHTML, 此时展示在界面上的内容, 是原始的 markdown 字符串
                    // 咱们需要的是渲染后的, 带有格式的效果

                      // let content = document.querySelector('#content');
                      // content.innerHTML = body.data.content;

                    // 第一个参数对应 id=content 的 html 标签. 渲染后得到的 html 片段就会被放到这个 标签下.
                    // editormd.markdownToHTML('content',{
                    //     markdown: body.data.content
                    // });
                    editormd.markdownToHTML('content',{
                        markdown: body.data.content
                    });
                }
            });
        }
        getBlogDetail(blogId);


        function getUserInfo(){
            $.ajax({
                type: "get",
                url: 'user/getlogininfo',
                success: function(body){
                    console.log(body);
                    //判定此处的body是不是一个有效的user对象（userId是否非0）
                    if(body.data.userId && body.data.userId>0){
                        //登录成功，不做处理
                        console.log("当前用户登录成功，用户名："+body.data.username);

                        //在getUserInfo的回调函数里，来获取作者信息
                        getAuthorInfo(body.data,blogId);

                    }else{
                        //登录失败，让前端页面跳转到login.html
                        alert("当前您尚未登录！请登录后再访问博客列表！");
                        location.assign('blog_login.html');
                    }
                },
                error: function(){
                    alert('当前您尚未登录！请登录后再访问此页面！');
                    location.assign('blog_login.html');
                }
            });
        }

        //判定用户登录状态
        getUserInfo();

        //从服务器获取一下当前博客的作者信息，并显示到页面上
        function getAuthorInfo(user,blogId){
            $.ajax({
                type: "get",
                url: "/user/getbloguserinfo",
                data: {"blogId":blogId},
                dataType:"json",
                success: function(body){
                    console.log(body);
                    //此处的body就是服务器返回的user对象
                    if (body.status==-1){
                        alert("当前文章作者用户已注销！");
                        window.location.href="blog_list.html";
                    }
                    if(body.data.username){
                        console.log(body);
                        changeUserName(body.data.username);

                        if(body.data.username==user.username){
                            //作者和登录的用户是一个人，则显示“删除按钮”
                            let navDiv=document.querySelector('.nav');
                            let button=document.createElement('button');
                            button.innerHTML='删除博客';
                            // a.href=""; a标签无herf属性 鼠标移动上去无手指效果！
                            // 不影响功能的正常实现
                            //期望点击删除按钮, 构造一个形如 blogDelete?blogId=6 这样的请求
                           // a.href='blogDetele'+location.search;
                            navDiv.appendChild(button);
                            $("button").click(function (){
                                $.ajax({
                                    type: "get",
                                    url: "/blog/delete",
                                    data: {"blogId":blogId},
                                    dataType:"json",
                                    success: function(body){
                                        if (body.data==true){
                                            alert("删除博客成功！");
                                            window.location.href="blog_list.html";
                                        }else {
                                            window.location.href="blog_detail.html";
                                            alert("删除博客失败！")
                                        }
                                    }
                                });
                            });
                        }
                    }else{
                        console.log("获取作者信息失败"+body.reason);
                    }
                }
            });
        }


        function changeUserName(username){
            let h3=document.querySelector('.card>h3');
            h3.innerHTML=username;
        }





    </script>


</body>
</html>